.br
.ul
Program Consulting
.pg
Program consulting is a
.m4 1
highly specialized form of data analysis.
The customer thinks he knows
what he was trying to do;
he thinks he has conformed to the
input/output specification;
and he is confident in
his programming skill.
Generally, he is not accustomed
to careful study of the center specifications
relating to the language he is
using, the data format requirements
pertinent to his problem, and
the control language instruction
set necessary to do his computation.
.pg
In most cases, the program
consultant is shown some computer
output and asked to provide guidance
to produce a program which produces
correct results.
Computer programs can have two
.m4 3
dramatically different deficiencies.
The program style, and computational
techniques, together with associated resources
utilization of the computer system may
be very bad, uneconomic, but
the results may be correct.
On the other hand the program may
contain logical error, or control
error, or faulty data definitions,
or keypunch errors which mimic these
error types, or any combination
of these four, in any
number of occurrences.
.pg
Of course, a great
many programs written by
inexperienced programmers
will have both types
of program deficiencies.
Since it is possible
to write programs after a
20 lecture course, a
new center will find that
not only are the students inexperienced
but many of the customer
programmer groups fall into the
same category.
.pg
In those centers where the control
software and/or hardware configurations
are changing, or where the systems
programmers in charge of the control
software are permitted to experiment,
the consultant is
often faced with the situation wherein
a computer program produced correct and
satisfactory results on day 1
but on day 2 did not reproduce
these results.
It may be that the over-all
system has been modified or that the
programs that entered the computing
part of the system were
not identical due to operator,
or peripheral, or
transmission malfunction.
.pg
Western university practice,
in the main, accepts computer
wastage to avoid the staff
problem of providing adequate
and effective consulting.
You will not want to afford
the luxury of unnecessary wastage
which can be avoided by using
your human resources.
Yet, even you, cannot find
the number of staff necessary
to cover this activity unless you
can reduce the demand, without
sacrificing efficiency.
.pg
Computing centers have earned the bad
reputation of providing poor
to erroneous information about
their own requirements.
Many are prepared to change these
requirements without notice.
If the marketing concept
proposed in Chapter 4 has any
validity it must be effective in
this problem area.
The following action can reduce
the information transfer problem at a very
low price.
.pg
For each program language, FORTRAN, COBOL,
ALGOL etc. a set of displays
will be built.
Small typical programs (say 3) in
good style will be written
and the source deck used in the
display.
Then these three boards of a size
to permit mounting 32 cards with
adequate
surround space will have the cards
mounted in sequence.
A skilled sign-maker or draftsman
will then letter each card with
the instruction code on the top row,
and a brief definition or
explanation of the card's function
.m4 5
in a vernacular language.
The groups of cards performing
computation "tasks" or "activities"
will be bracketed by the
draftsman and along the brackets
a vernacular description
of that task and a reference to
the appropriate standard program
manual will be written.
Another smaller panel will be
constructed with the proper
set and sequence
of center system control cards
.m4 3
required to permit the sample
programs to enter the computer.
Again each of these control cards would
be labelled and carry an
explanation of its function.
Any special comments would be displayed
in the margins of the display.
Warning:||If these displays become obsolete,
then they assist in developing faulty programs.
As soon as the center starts to operate,
the types of error due to carelessness,
inattention, lack of information,
or misunderstandings will emerge.
If the department selects key samples
of such errors and modifies
the programming code to protect
the identity of the person,
then a display of each error can
be built QUICKLY.
Each error should
have its own board.
The error cards
should be on side and the
corrected version on the other;
all cards
labelled and defined.
On the margins should be an
explanation of the error
and what the output would
look like.
For example:||Many systems spell
out the diagnosed error as a
numerical code, say 52.
But no readable list exists
which explains for the customer what 52 implies.
The display would give
the most likely causes and an
offer to help if the suggested
correction does not cure the
difficulty.
This program is not a well-defined task in
the sense
that it must be brought up to date
immediately there is a change
which invalidates a display,
or which requires a new procedure.
If done properly it can reduce
the load on the program consultants.
The consultant examining a
problem finds that the error is
on a display.
He points out the error,
refers the client to the
proper display and is finished.
The consultant may find a new type
error which has become too frequent.
He would then request a display which
should sharply reduce the
number of queries.
In a bi or multi-lingual
region the vernacular language is enlarged
to cover all necessary languages.
.pg
In a new center where
the number of experienced
personnel will be limited,
the program consultants will be
chosen to play a role
which will change over time.
Specifically, they will be
mature individuals who have
successfully mastered the
training programs provided.
They will screen out the customer difficulties
they know they cannot handled and pass
them over to the "experts."
They will assist in repairing
the program flaws within their
sphere of competence.
These experts will consult
jointly with the customer and the
program consultant on
the difficult problems, hopefully answering
the customer query and improving
the constultant's background.
Gradually, with support from
below with displays
and from the expert above,
the program consultant
will develop into a
valuable consultant.
.pg
Who is this expert?
He may be a technical director,
a professor, a foreign visiting
member of the center or a
gifted applications programmer.
There are circumstances
where the computing
system itself is interacting
with the program in a
strange way and the expert
must come from the systems
programmer group or from the
computer manufacturer's customer
service group.
.pg
Since the computation center is
responsible for technical
guidance about its computing system
to the customer community,
the program consultant represents
the interface of the center
with the user.
He is accountable to both
for most effective use and development
of the center.
He exerts control over the development
of the center by providing
information as to customer needs,
habits, and problems.
This is important to the
center, but vital to the customer.
The customer should not
have to wander through
the center seeking aid from
whomsoever he can find.
Under this system, the
user first goes to the information
room and checks the error layouts
against his problem.
If the layout system is good,
more than half the time he will
find a solution,
and never need the consultant.
If he fails to find
a solution among
the displays,
he goes to a consultant and
remains a client of that individual
until a solution is reached.
.pg
Policy must now be set for
allocation of costs.
It is in general set so
that a reasonable number of
consultant minutes per resource
unit of computation is
built into the price structure
as overhead.
If the customer is inept, then
the consultant is guided
by the marketing supervisor and the
customer offered consulting
on a charge basis where warranted.
It may be recommended that the customer
take more training, as the center
cannot allocate any more of its
resources to his problem.
.pg
For a program
consultant to achieve maximum
development, and to remain an
expert with respect to the
center system, it is helpful for
him to be assigned carefully selected
applications programming work.
Wherever possible these assignments
should not have a severe completion date.
This permits him to have useful work when
his consulting does not fill his
working day.
In addition some of the
program consultants
may turn out to have real
programming skill, and it is
in the center's interest to find
useful work which does not
supplant their main function.
.br
.ul
Technicians
.pg
The people who will operate the
simple machines such as
keypunches, sorters, reproducers,
who will under engineering
supervision operate the card readers,
line printers, tape and disk decks,
graphical plotters, who will handle
the input and output offices organizing
the customer demands make up the cadre
of staff considered technicians.
There are two distinct aspects
to their training.
The first is the basic machine,
programming, or procedural background required
in any center; the second consists of
those special considerations required by the
overall center system.
The latter will touch every skill,
from special keypunch codes, color
requirements for cards of
special use, tape and reel
labelling, job authorization and
priority control,
individual customer budget control,
to constraints imposed by
policy considerations.
.pg
After the basic training has been
absorbed, the qualified individuals
should be screened
for employment on the basis
of alertness,
reliability, and a sense of service.
These qualities are so
important that it is very helpful
if all employment is provisional
for three to six months, and those
individuals seeking a
routinized senecure be transferred
out of the center.
The selected groups are
then trained as units for
the system.
.pg
These positions are difficult
to maintain as cheerful jobs.
The never-ending flow of work,
and job related queries and complaints
tends to dull the enthusiam of
most workers.
Regular refresher courses during stable
operating intervals and special
courses when incipient changes
are planned are strongly recommended.
Occasional low level staff meetings
where their work as a part of
the center is evaluated and
occasionally praised, and where they
are encouraged to question,
to suggest changes is also good for the
center.
These jobs are so necessary and take
sufficient time to learn well
that it is NOT recommended
that transfers be easy or often.
However, after a skill
ranking of the different jobs
have been made by the center
management from their evaluation
of their own staff, it is
recommended that
individuals be
considered for training courses
for the higher level jobs.
Promotion should be
primarily on merit with seniority
a secondary fact.
.br
.ul
Technical Librarian
.pg
This job is not programming,
engineering, nor that of a technician.
Furthermore, it is unlikely
that an experienced individual
can be found.
This individual must be
fluent in English and any other
foreign language
represented by substantial
amounts of printed matter
in the library.
The library material which will
be controlled will be very
valuable in the sense that
there will be few copies
available elsewhere.
.pg
Any help which you can get
from your National Library in
locating candidates and in
offering guidance as to the
mechanics of library work
should be sought.
In some countries there is a
Naional Document Center which
can be of great help.
U.N.E.S.C.O. may be
able to help.
The critical skill is
language and the important
attributes are intelligence
and desire to help.
The technical skills can be
.m4 1
learned.
.pg
A copying machine is very
important to the center and
especially to the library, and
should be included in the
equipment considered by
the committee.
.br
.ul
Training
.pg
These paragraphs are
written under the constraint
that the availability of
.m4 3
scientific computation centers
in the region has been so
limited that there does not
exist a free unemployed or
readily available population of
technicians.
Consequently, the training
program must be all inclusive.
It is true the computer
manufacturer often gives basic training
which is most useful.
But it does not replace
the need for proper training
by the center.
For example:||Keypunchers
are often trained
at manufacturer's schools,
and they learn to operate the
machines and to keypunch from data.
They are almost never
trained to keypunch programs
written in the higher languages
such as ALGOL, FORTRAN, etc.
They are trained as production
workers to produce
as many cards as
possible with a reasonable
quality index.
.pg
This philosophy is just
not good enough for a
scientific computation
center, where the highest
percentage of error free
cards possible even at the cost
of lower overall cards per
day output is the best
strategy.
This strategy is best
since a substantial
keypunch load is that
of program description
punched cards.
This situation can best
be described as information
at near zero redundancy level.
Error detecting in general
is usually difficult, and it
is an inefficient way to use
the time of high level people.
In the case of punched card
program decks a high
error rate is not only
wasteful of professional
time but very costly in terms of
computer costs.
Consequently, any reasonable
minimum cost philosophy dictates
maximum effort to reduce
keypunch error.
This requires that the operators
be given as much training in reading
and comprehending program
statements as they can absorb.
This type of training not
only tends to reduce the
transcription error but as
the operators become experienced
they will spot apparent recording
errors on the part of
the programmer.
The operator should be encouraged
to take action.
Some installations permit
the operator to correct
an obvious error but to underline
it in red on the original;
some only permit the operator to
query.
The planning for the training
program must include
the establishment and, where
necessary approval of educational
and skill levels and working
conditions taking into
account the legal, economic,
level of employment, and cultural
constraints.
Here the guidance of experience from
the more technologically
advanced nations, may
not only be unhelpful but actually
harmful.
Their problems are not
representative
of the problems of your region.
Hence their solutions may
.ne 2
well not be relevant.
.pg
In a multi-language nation
with substantial or severe
under-employment it makes
very good sense to use
well-educated personnel
at all levels of the
computation system except for
janitors and porters.
And even here, the janitors
must be able to carry
out much more complicated
assignments than they
would in more regular
employment.
Cleanliness and trash control
is very important.
A dirty littered computation
center is "an accident
or catastrophe waiting to
happen".
.pg
Even where skilled and
educated people are in short
supply but where the
scientific computation
center is a scarce
resource, minimum cost
or maximum benefit
philosophy suggests
the importance of
using the best
people available.
The maxim of "Hire brains and add
training" should apply
throughout the center.
.pg
In the keypunching example,
the use of educated
personnel has
a number of advantages.
1.||Their language skills should
be better and hence the natural
transcription
error rate should be much lower.
2.||The rapid changes in
requirements, types of
problems, and languages
together with the sense of
belonging to research
and development projects of
national value can give
job satisfaction to the
educated person.
3.||The educated are always
candidates for promotion.
4.||The better the keypunch
job, the cheaper it is to
complete a project on the computer.
This will reduce both local
and foreign currency
requirements.
In one instance in Egypt,
where linguistic ability,
and accuracy would have a
substantial effect on
cost and length of time
to completion, not only
were university people
trained as keypunchers but
a bonus system for correct
cards punched was approved.
The decision gave excellent
results and the morale of the
keypunch organization rose
with their increasing competence.
.pg
A strong point was made in the
chapter on Organization about
the need for cooperation among
the managers.
The same need applies to
the supervisory groups
of technicians.
In the early days of a new
center there are going
to be many mistakes,
misunderstandings and
changes in the operations flow
among these groups.
If the operations department
has open discussion for
the group as a whole as
a means of developing
efficiency, there
is grave danger
that the supervisors will view
criticism as hostile,
personal, and attempt
to avoid or shift
responsibility.
A far better procedure
is to have regular,
closed supervisor's
meetings where the
supervisor does not
feel pressed from below.
Here, where necessary, heads
can be knocked,
supervisors can be
reassigned, and they,
the supervisors, can begin to
understand the management
environment.
Meetings of the whole then
become the forum of information
and statements of policy and
procedure.
In general, the level of technical
achievement by the center
will depend more on the type
of organization
authorized, the abilities
of the cadre of leaders,
and the collective competence
of the staff than on the
equipment.
.nx mt58.k
